package tech.nuoson.wisdom.domain.speechtrans;

import java.util.concurrent.CompletableFuture;

import org.springframework.lang.NonNull;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.socket.BinaryMessage;

/**
 * 用于访问三方语音服务的接口
 */
@Validated
public interface SpeechTransGateway {
    /**
     * 发送一条语音消息
     * 
     * @param message
     */
    void sendSpeechMessage(@NonNull BinaryMessage message);

    /**
     * 启动连接
     * 
     * @return Future
     */
    CompletableFuture<Void> start();

    /**
     * 停止连接
     */
    void stop();
}
